auto merge of #541 : alexcrichton/cargo/cargo-upload, r=brson
authorbors <bors@rust-lang.org>
Tue, 16 Sep 2014 22:49:51 +0000 (22:49 +0000)
committerbors <bors@rust-lang.org>
Tue, 16 Sep 2014 22:49:51 +0000 (22:49 +0000)
commit494f7d5a780fe8e4c5548f16047dc3df5249afe8
tree7e01878754431e941b1230d98ea78caa1ae0d4ca
parentee1df634fd95b324abd22ab34c90b76c02043ae7
parent8732d07260d126c24114645eae1908f503e1e2f3
auto merge of #541 : alexcrichton/cargo/cargo-upload, r=brson

This PR implements the plumbing necessary for uploading packages to a registry, downloading packages, depending on those packages, etc. All APIs (upload/download) are tied to the current implementation of [the registry](https://github.com/alexcrichton/cargo-registry).

Most of the design-level details in this PR are in the first commit. The later commits are largely adding tests, polishing it off, and making it work on windows.

Dependency-wise, this picks up a dependency on `curl-rust`, albeit a small fork until the upstream linkage changes are merged. Linkage details can be found [here](https://github.com/carllerche/curl-rust/pull/16). I'll probably have to do some configuration of the bots to get this to work (or hopefully not!).

r? @wycats